1. Field of the Invention
The present invention relates to software copy-protection, software copy-tracking, program-to-program network communications, and software execution permission issues.
2. Description of the Prior Art
Software is distributed to software users via floppy disk, CDROM and other media, and electronically over computer networks. Software is particularly easy to copy, and to distribute to unlicensed or unauthorized users.
One of the problems facing software publishers is the control of the number of executable copies made by software users themselves. The software publisher or distributor has many reasons to want to control or track the number of authorized, unauthorized, unintended or user-created copies of his software. Among these are:
(1) If the software is normally purchased, then unauthorized copies represent theft of the product, and therefore lost revenue to the publisher/copyright holder.
(2) The distributed copies of the product may need to be limited to a certain number for statistical purposes. Accordingly, unauthorized copies would contaminate usage statistics.
(3) Even if user-created copies are intended or allowed, the publisher may still want to track the number in use, or the number of copies made for statistical purposes.
(4) Each runnable copy of the software may represent a potential liability or obligation on the part of the publisher, such as the rights to software upgrades, technical support, and marketing/merchandising offers.
(5) The publisher may also wish to limit the number of times that its software is used, even by legitimate customers of the software. This would be licensing of software per use, or limitations on the number of times the software is used.
Various techniques are already used by publishers and distributors to control user-created copies. Each of these techniques has its strengths and its limitations.
For example, in the mid-1980's, various attempts were made to limit successful copying of disks (disk copy-protection). This usually involved the writing of secret ("uncopyable") information on the floppy disk or user's hard disk, preventing unauthorized copies from working because the secret information could not be copied by normal, simple copying techniques. These copy-protection strategies were eventually abandoned because the general public resisted purchasing such "copy-protected" products for many reasons. Specifically, they prevented legitimately backing up copies of purchased software. Also, there was a perception that some techniques could damage other legitimate information the user already had. Further, there was a feeling that the purchaser owned the software and therefore should be able to do with it as he pleased without undue restriction.
Usage-limiting techniques are currently being used to limit the number of simultaneous users of commercial software on local-area-networks (LANs). Typically, an organization will purchase the license to run a limited number of copies of a software product. The master copy of the software is placed on the LAN file server. Whenever a user on the LAN executes the software, another copy-restriction program is run which checks how many current users of that software there are, and either allows or rejects the particular user's request to run the software. This technique cannot limit the uses of the software by people not connected to the LAN, such as employees of the organization who wish to use the software at home.
Publishers can also place the software onto a medium that is difficult or expensive to copy, such as CDROM until writable CDROM drives become inexpensive. Or, they may make it difficult to copy the documentation/manual for the software, for instance, by choosing perfect-binding for their manuals. However, these methods primarily discourage, rather than prevent, copying.